/**
 * Basic geometric calculation like area of triangle etc. related to mesh 
 *
 */

Info << "Mesh store in: " << mesh.meshDir() << endl;

Info << "Geometric direction: " << mesh.geometricD() << endl;

Info << "Return number of geometric direction: " << mesh.nGeometricD() << endl; 


// Get the distance between two points in mesh 

scalar leng_mesh_x = mesh.points()[1][0] - mesh.points()[0][0];
Info << "Point 1: " << mesh.points()[1][0] << endl;
Info << "Point 2: " << mesh.points()[0][0] << endl;
Info << "A single mesh length at x direction is: " << leng_mesh_x << endl;

// Compare with the output of checkMesh
Info << "Num of faces: " << mesh.faces().size() << endl;
Info << "Num of points: " << mesh.points().size() << endl;
Info << "Num of cells: " << mesh.cells().size() << endl;

Info << "Points around cell index 0: " << mesh.cellPoints()[0] << endl;

forAll(mesh.cells(),cellI)
{
    Info << "mesh.cells()[cellI]: " << mesh.cells()[cellI] << endl;
    Info << mesh.cellPoints()[cellI] << endl;
}

forAll(mesh.faces(),faceI)
{
    Info << "mesh.faces()[faceI]" << mesh.faces()[faceI] << endl;
    Info << mesh.faceOwner()[faceI] << endl;
}
